بسم الله الرحمن الرحيم

منتـــدى فيـجــوال بيـســك دوت نيــت  

العودة   منتـــدى فيـجــوال بيـســك دوت نيــت > أقسام المحفوظات Archives > قسم الدروس والمقالات المحفوظة
السلام عليكم يا بن حسن
آخر زيارة لك : 02-08-2004 كانت في 10:24 PM
الرسائل الخاصة: 0 , المجموع 8.
لوحة التحكم الأسئلة الشائعة قائمة الأعضاء التقويم مواضيع جديدة روابط سريعة تسجيل الخروج


 
خيارات الموضوع بحث في هذا الموضوع تقييم الموضوع
  #1   تقرير عن مشاركة مخالفة  
قديم 14-05-2002, 12:04 AM
programmer2001 programmer2001 غير متصل
مبرمج محترف
 
تاريخ التّسجيل: Aug 2000
الإقامة: المملكة العربية السعودية
المشاركات: 149
إفتراضي شرح استخدام ملف المصادر (res.) بالصور

ماهي مصادر البرنامج ؟

مصادر البرنامج هي عبارة عن الصور والأيقونات والنصوص وكذلك ملفات الصوت والفيديو أو أي نوع آخر من الملفات.

كيف يمكن وضع هذه المصادر في ملف واحد؟

يمكن وضع مصادر البرنامج في ملف واحد ويكون بامتداد res. بمعنى Resource عن طريق الفيجوال بيسك باستخدام (محرر المصادر) VB Resource Editor

ماهي الفائدة من وضع ملفاتي في ملف مصدري واحد؟

تقلل من زمن تحميل البرنامج لانك لن تقوم بتحميل أي ملف الا عند الحاجة إليه ، أيضا ربما لانك لاتريد استخدام ملفاتك المصدرية من قبل مستخدم البرنامج ، كذلك يسهل عليك عملية إعداد البرامج متعددة اللغات.

كيف أقوم بإضافة ملفاتي إلى الملف المصدري وكيف أقوم باستدعائها؟

توكل على الله وقل باسم الله الرحمن الرحيم ولنبدأ سوياً

- اختر (Add-In Manager) من قائمة (Add-Ins) كما في الصورة التالية:


-سيظهر لك مربع حوار اضغط مرتين على (VB6 Resource Editor) ثم اضغط على (OK) كما هو موضح في الصورة التالية:


-الآن اختر (Add New Resource File) من قائمة (Project) كما في الصورة التالية:


- سيظهر لك مربع حوار كما في الصورة التالية ، حدد المكان الذي تريد ان تحفظ فيه الملف المصدري ويفضل أن يكون في نفس مسار البرنامج ثم اكتب اسم للملف بدلا من (RES.*)


- ستظهر لك رسالة تخبرك بأن الملف غير موجود وهل تريد إنشائه أم لا ، اختر (Yes) كما في الصورة التالية:


- الآن من نافذة مستكشف المشروع اختر الملف المصدري الذي حددته قبل قليل بالضغط عليه مرتين كما في الصورة التالية:


- سيظهر لك محرر المصادر ومن خلاله تستطيع إضافة الملفات التي تريد كما هو موضح في الصورة التالية:


تابع ...
  #2   تقرير عن مشاركة مخالفة  
قديم 14-05-2002, 12:05 AM
programmer2001 programmer2001 غير متصل
مبرمج محترف
 
تاريخ التّسجيل: Aug 2000
الإقامة: المملكة العربية السعودية
المشاركات: 149
إفتراضي

1- هذا الزر لإضافة النص Text الى الملف المصدري: عند الضغط عليه يظهر لنا مربع حوار يطلب منك إدخال النص الذي تريد ، اتبع التعليمات الموضحة في الصورة التالية:


2- هذا الزر لإضافة مؤشر ماوس (cur.) الى الملف المصدري: عند الضغط عليه يظهر لنا مربع حوار يطلب منا تحديد مكان وجود مؤشر الماوس المراد كماهو موضح في الصورة التالية:


3- هذا الزر لإضافة الأيقونات (ico.) الى الملف المصدري: عند الضغط عليه يظهر لنا مربع حوار يطلب منا تحديد مسار ملف الأيقونة كمافي الصورة التالية:


4- هذا الزر لإضافة صورة نقطية (bmp.): عند الضغط عليه يظهر لنا مربع حوار يطلب منا تحديد مسار ملف الصورة النقطية كماهو موضح في الصورة التالية:

ملاحظة: لايمكن إضافة الصور بامتداد (jpg.) او (gif.) او (.tif) او غيرها باستخدام هذا الزر وانما نستخدم الزر رقم 5 لذلك.

5- هذا الزر يمكنك من إضافة ملفات الصور الأخرى مثل (jpg.) او (gif.) او (.tif) او غيرها وكذلك ملفات الصوت (wav.) وملفات الفيديو (avi.) والملفات النصية (txt.) وجميع الملفات الأخرى التي لم تذكر أعلاه: عند الضغط عليه يظهر لنا مربع حوار يطلب منا تحدد مكان وجود الملف كما في الصورة التالية:


الآن وبعد الانتهاء من إضافة الملفات التي نريد سيظهر لنا محرر النصوص بشكل مشابه لما يلي:


عند الضغط على زر (×) كما هو موضح في الصورة السابقة سنرجع الى شاشة تصميم الواجهة وكتابة الكود المعتادة.

تبقى الان ان نقوم باستخدام الكود لاستدعاء الملفات التي قمنا بتخزينها:

لاستخراج نص قمنا بتخزينه باستخدام الزر رقم 1

Code:

txt = LoadResString(101)
MsgBox txt

لاستخراج مؤشر ماوس قمنا بتخزينه باستخدام الزر رقم 2

Code:

Form1.MousePointer = vbCustom
Form1.MouseIcon = LoadResPicture(101, vbResCursor)

لاستخراج أيقونة قمنا بتخزينها باستخدام الزر رقم 3

Code:

Form1.Icon = LoadResPicture(101, vbResIcon)

لاستخراج صورة نقطية قمنا بتخزينها باستخدام الزر رقم 4

Code:

Picture1.Picture = LoadResPicture(101, vbResBitmap)

لاستخراج ملف آخر قمنا بتخزينه باستخدام الزر رقم 5
في هذه الحالة يجب ان نقوم بتحويل البيانات الى ملف ومن ثم نقوم باستخدامها
نقوم بإنشاء إجراء يقوم بتحويل البيانات المخزنة للملف إلى ملف

Code:

Public Sub LoadDataIntoFile(id As Integer, FileName As String)
    Dim myArray() As Byte
    Dim myFile As Long
    If Dir(FileName) = "" Then
        myArray = LoadResData(id, "CUSTOM")
        myFile = FreeFile
        Open FileName For Binary Access Write As #myFile
        Put #myFile, , myArray
        Close #myFile
    End If
End Sub

الان لنفرض اننا قمنا بتخزين ملف صورة بامتداد (gif.) لاستدعاء ذلك الملف نستخدم الكود التالي

Code:

'تحويل بيانات العنصر رقم 101 الى ملف مؤقت باسم temp.gif
LoadDataIntoFile 101, App.Path & "\temp.gif"
' نعرض هذا الملف وهو عبارة عن صورة في مربع الصورة
Picture1.Picture = LoadPicture(App.Path & "\temp.gif")
' نقوم بحذف الملف المؤقت لعدم الحاجة إليه
Kill App.Path & "\temp.gif"

إن شاء الله أكون قد وفقت في إفادتكم بما هو نافع وآسف على الاطالة
  #3   تقرير عن مشاركة مخالفة  
قديم 14-05-2002, 12:59 AM
black iceberg black iceberg غير متصل
مبرمج
 
تاريخ التّسجيل: Apr 2002
الإقامة: مصر
المشاركات: 251
Thumbs up

بسم الله الرحمن الرحيم
شكرا لك اخي العزيز على هذا الشرح الرائع و الوافي
__________________
لا تكن للعيش مجرح الفؤاد أنما الرزق على رب العباد
  #4   تقرير عن مشاركة مخالفة  
قديم 14-05-2002, 04:38 AM
النسر النسر غير متصل
الفقير إلى الله
 
تاريخ التّسجيل: Nov 2001
الإقامة: أرض الإسلام
المشاركات: 238
إفتراضي

شكرا على المجهود
وعندي سؤال وهو عند تحويل البرنامج الى exe سوف يتم ضم ملف المصادر إلى الملف التنفيذي مما سيؤدي الى زيادة حجم الملف التنفيذي بنفس حجم الصور والاصوات في ملف المصادر مما سيؤدي إلى إرهاق الذاكرة عند تحميل البرنامج - اليس هذه ميزه ليست مرغوبا بها

عندي طريقة أخرى بعيدة عن الطريقة المتعارف عليها والمذكورة أعلاة تمكنك من إنشاء ملف مصادر خاص بك ميزتها أنها لا تضم الملف الناشئ مع الملف التنفيذي وانما تكون بملف مستقل تماما - وإذا كان الامر يهمكم سأضع المثال مع الشرح
  #5   تقرير عن مشاركة مخالفة  
قديم 14-05-2002, 06:27 AM
jarour jarour غير متصل
عاشق البرمجة
 
تاريخ التّسجيل: Dec 2001
الإقامة: سوريا
المشاركات: 285
إفتراضي

مشكور يا أخي على خذا الشرح الوافي


وياريت الطريقة الثانية توضع لتعم الفائدة ومشكور سلف
__________________
العلم ليس حكراً على شخص ولكنة لطالبه

لا إله إلا الله محمد رسول الله
  #6   تقرير عن مشاركة مخالفة  
قديم 15-05-2002, 09:05 PM
programmer2001 programmer2001 غير متصل
مبرمج محترف
 
تاريخ التّسجيل: Aug 2000
الإقامة: المملكة العربية السعودية
المشاركات: 149
إفتراضي

لا شكر على واجب يا اخوان

اخوي النسر بالنسبة لملف المصادر لن يتم دمجه مع الملف التنفيذي وانما سيكون ملف خارجي بامتداد res. والملف التنفيذي بامتداد exe.

وبالعكس هذه الطريقة تقلل من زمن تحميل البرنامج وتزيد من سرعته ولمزيد من المعلومات او للتأكد ارجع لموقع مايكروسوفت وتقبل تحياتي
  #7   تقرير عن مشاركة مخالفة  
قديم 16-05-2002, 01:55 AM
bbt bbt غير متصل
عضو جديد
 
تاريخ التّسجيل: May 2002
المشاركات: 1
إفتراضي

عزيزي programmer2001 هل ممكن وضع ملف فلاش swf وملف فيديو avi داخل ملف المصادر
وياريت اذا ممكن وضع الكود لتشغيل ملف الفلاش وملف الفيديو بعد وضع الملفات داخل ملف المصدر

وتسلم عزيزي على الشرح الوافي
  #8   تقرير عن مشاركة مخالفة  
قديم 16-05-2002, 02:39 AM
programmer2001 programmer2001 غير متصل
مبرمج محترف
 
تاريخ التّسجيل: Aug 2000
الإقامة: المملكة العربية السعودية
المشاركات: 149
Thumbs up

أضف ملف الفلاش الذي تريد لملف المصادر عن طريق الزر رقم 5

بعد الاضافة إذهب لقائمة Project ثم Components
اختر Shockwave Flash ثم OK

أضف أداة الفلاش على النموذج حسب الحجم الذي تريد
ثم اضف زر أمر Command1 لتشغيل ملف الفلاش

ثم استخدم هذا الكود

Code:

Private Sub Command1_Click()
LoadDataIntoFile 101, App.Path & "\temp.swf"
' نعرض هذا الملف وهو عبارة عن صورة في مربع الصورة
ShockwaveFlash1.Movie = App.Path & "\temp.swf"
ShockwaveFlash1.Play
' نقوم بحذف الملف المؤقت لعدم الحاجة إليه
Kill App.Path & "\temp.swf"
End Sub

Public Sub LoadDataIntoFile(id As Integer, FileName As String)
    Dim myArray() As Byte
    Dim myFile As Long
    If Dir(FileName) = "" Then
        myArray = LoadResData(id, "CUSTOM")
        myFile = FreeFile
        Open FileName For Binary Access Write As #myFile
        Put #myFile, , myArray
        Close #myFile
    End If
End Sub
الكود باللون الأزرق لم يتغير

وبنفس الطريقة لتحميل ملفات الفيديو ولكن مع بعض التغيير في الاداة والكود الموجود في زر الأمر
  #9   تقرير عن مشاركة مخالفة  
قديم 16-05-2002, 06:34 AM
النسر النسر غير متصل
الفقير إلى الله
 
تاريخ التّسجيل: Nov 2001
الإقامة: أرض الإسلام
المشاركات: 238
إفتراضي

الاخ programmer2001 حين يتم تحويل البرنامج الى exe فإن ملف المصادر ذو الامتداد .res يتم دمجة مع الملف التنفيذي مما يزيد من حجم الملف التنفيذي وهذه النقطة لاجدال فيها
مزايا استخدام ملف المصادر:
تمكنك من وضع المصادر الخاصة بك مما توفر من عملية الاعداد وعدم نسخها وتغيير مسارها والبحث عنها
عدم العبث بمكونات الملف او التعديل او الحذف
ارفاقه كملف وحيد ولايحتاج لعميات كبيرة
يوفر الكود البرمجي
مساوء هذه الطريقة:
زيادة حجم الملف التنفيذي بمقدار الملفات
بطىء تحميل وعمل الملف التنفيذية في حالة الملفات الكبيرة
  #10   تقرير عن مشاركة مخالفة  
قديم 16-05-2002, 10:41 PM
ياسر محمد ياسر محمد غير متصل
مبرمج نشيط
 
تاريخ التّسجيل: May 2002
المشاركات: 206
إفتراضي

عزيزي programmer2001
لقد عمل ملف الفلاش صح والحمد لله
والباقي ملف الفيديو avi حيث وضعت أداة MMControl1
وغيرت على زر الأمر بعض الكود ولم يعمل البرنامج
آمل وضع الكود الصح لتشغيل الملف
ولك الشكر بعد الله سبحانه وتعالى
 



قوانين المشاركة
ليس بإمكانك إضافة موضوع جديد
ليس بإمكانك إضافة مشاركات جديدة
ليس بإمكانك إضافة مرفقات
بإمكانك تعديل مشاركاتك

كود [IMG] متاح
كود HTML غير متاح



جميع الأوقات بتوقيت السعودية. الساعة الآن » 10:31 PM.


Powered by: vBulletin Version 3.0.1
Copyright ©2000 - 2004, Jelsoft Enterprises Ltd.
جميع الحقوق محفوظة لموقع ( فيجوال بيسك للعرب )